﻿/**
 *
 * @file SectionDeleteDialog.h
 * @brief 截面删除对话框
 * @author Li ZiYang (Li ZiYang@163.com)
 * @date 2025-01-10
 *
 */
#ifndef SECTIONDELETEDIALOG_H
#define SECTIONDELETEDIALOG_H

#include "GUIPropertyDialogAPI.h"
#include "GUIWidget/GUIDialogBase.h"

namespace Ui {
    class SectionDeleteDialog;
}

namespace EventOper {
    class ParaWidgetInterfaceOperator;
}

namespace Interface {
    class FITKAbstractSection;
}

namespace GUI
{
    /**
     * @brief 截面删除对话框
     * @author Li ZiYang (Li ZiYang@163.com)
     * @date 2025-01-10
     */
    class GUIPropertyDialogAPI SectionDeleteDialog : public GUIDialogBase
    {
        Q_OBJECT;
    public:
        /**
         * @brief Construct a new Geometry Delete Dialog object
         * @param[i]  obj            几何对象
         * @param[i]  oper           操作器对象
         * @author Li ZiYang (Li ZiYang@163.com)
         * @date 2025-01-10
         */
        SectionDeleteDialog(Interface::FITKAbstractSection* obj, EventOper::ParaWidgetInterfaceOperator* oper);
        /**
         * @brief Destroy the Geometry Delete Dialog object
         * @author Li ZiYang (Li ZiYang@163.com)
         * @date 2025-01-10
         */
        ~SectionDeleteDialog();
    private slots:
        ;
        /**
         * @brief Ok点击事件
         * @author Li ZiYang (Li ZiYang@163.com)
         * @date 2024-07-16
         */
        void on_pushButton_OK_clicked();
        /**
         * @brief 取消点击事件
         * @author Li ZiYang (Li ZiYang@163.com)
         * @date 2024-07-16
         */
        void on_pushButton_Cancel_clicked();
    protected:
        /**
         * @brief 操作器对象
         * @author Li ZiYang (Li ZiYang@163.com)
         * @date 2025-01-10
         */
        EventOper::ParaWidgetInterfaceOperator* _oper = nullptr;
        /**
         * @brief ui对象
         * @author Li ZiYang (Li ZiYang@163.com)
         * @date 2025-01-10
         */
        Ui::SectionDeleteDialog* _ui = nullptr;
        /**
         * @brief 几何数据对象
         * @author Li ZiYang (Li ZiYang@163.com)
         * @date 2025-01-10
         */
        Interface::FITKAbstractSection* _obj = nullptr;
    };
}

#endif // SECTIONDELETEDIALOG_H
